package com.cjj.service;


import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.cjj.dao.entity.ForumPost;
import com.cjj.dto.req.GetPublishedPostsReqDTO;
import com.cjj.dto.req.PostCreateReqDTO;
import com.cjj.dto.req.ReviewPostReqDTO;
import com.cjj.dto.resp.ForumPostDetailRespDTO;

public interface ForumPostService extends IService<ForumPost> {
    Page<ForumPost> getPendingPosts(Integer page, Integer size);

    void reviewPost(ReviewPostReqDTO reviewPostReqDTO);

    void createPost(PostCreateReqDTO postCreateReqDTO);

    ForumPostDetailRespDTO getPostDetail(Long postId, Long currentUserId);

    Page<ForumPost> getPublishedPosts(Integer pageNum, Integer pageSize, GetPublishedPostsReqDTO getPublishedPostsReqDTO);
}
